Termination of the given ITRSProblem could not be shown:



ITRS
  ↳ ITRStoQTRSProof

ITRS problem:
The following domains are used:

z

The TRS R consists of the following rules:

cond(TRUE, x, y) → +@z(1@z, minus(x, +@z(y, 1@z)))
cond(FALSE, x, y) → 0@z
minus(x, y) → cond(>=@z(x, +@z(y, 1@z)), x, y)

The set Q consists of the following terms:

cond(TRUE, x0, x1)
cond(FALSE, x0, x1)
minus(x0, x1)


Represented integers and predefined function symbols by Terms

↳ ITRS
  ↳ ITRStoQTRSProof
QTRS
      ↳ DependencyPairsProof

Q restricted rewrite system:
The TRS R consists of the following rules:

cond(true, x, y) → plus_int(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
cond(false, x, y) → pos(0)
minus(x, y) → cond(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(neg(x), pos(y)) → minus_nat(y, x)
plus_int(neg(x), neg(y)) → neg(plus_nat(x, y))
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))


Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem:
Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → PLUS_INT(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
COND(true, x, y) → PLUS_INT(pos(s(0)), y)
MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
MINUS(x, y) → GREATEREQ_INT(x, plus_int(pos(s(0)), y))
MINUS(x, y) → PLUS_INT(pos(s(0)), y)
PLUS_INT(pos(x), neg(y)) → MINUS_NAT(x, y)
PLUS_INT(neg(x), pos(y)) → MINUS_NAT(y, x)
PLUS_INT(neg(x), neg(y)) → PLUS_NAT(x, y)
PLUS_INT(pos(x), pos(y)) → PLUS_NAT(x, y)
PLUS_NAT(s(x), y) → PLUS_NAT(x, y)
MINUS_NAT(s(x), s(y)) → MINUS_NAT(x, y)
GREATEREQ_INT(pos(s(x)), pos(s(y))) → GREATEREQ_INT(pos(x), pos(y))
GREATEREQ_INT(neg(s(x)), neg(s(y))) → GREATEREQ_INT(neg(x), neg(y))

The TRS R consists of the following rules:

cond(true, x, y) → plus_int(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
cond(false, x, y) → pos(0)
minus(x, y) → cond(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(neg(x), pos(y)) → minus_nat(y, x)
plus_int(neg(x), neg(y)) → neg(plus_nat(x, y))
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
QDP
          ↳ DependencyGraphProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → PLUS_INT(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
COND(true, x, y) → PLUS_INT(pos(s(0)), y)
MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
MINUS(x, y) → GREATEREQ_INT(x, plus_int(pos(s(0)), y))
MINUS(x, y) → PLUS_INT(pos(s(0)), y)
PLUS_INT(pos(x), neg(y)) → MINUS_NAT(x, y)
PLUS_INT(neg(x), pos(y)) → MINUS_NAT(y, x)
PLUS_INT(neg(x), neg(y)) → PLUS_NAT(x, y)
PLUS_INT(pos(x), pos(y)) → PLUS_NAT(x, y)
PLUS_NAT(s(x), y) → PLUS_NAT(x, y)
MINUS_NAT(s(x), s(y)) → MINUS_NAT(x, y)
GREATEREQ_INT(pos(s(x)), pos(s(y))) → GREATEREQ_INT(pos(x), pos(y))
GREATEREQ_INT(neg(s(x)), neg(s(y))) → GREATEREQ_INT(neg(x), neg(y))

The TRS R consists of the following rules:

cond(true, x, y) → plus_int(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
cond(false, x, y) → pos(0)
minus(x, y) → cond(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(neg(x), pos(y)) → minus_nat(y, x)
plus_int(neg(x), neg(y)) → neg(plus_nat(x, y))
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 5 SCCs with 8 less nodes.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
QDP
                ↳ UsableRulesProof
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

GREATEREQ_INT(neg(s(x)), neg(s(y))) → GREATEREQ_INT(neg(x), neg(y))

The TRS R consists of the following rules:

cond(true, x, y) → plus_int(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
cond(false, x, y) → pos(0)
minus(x, y) → cond(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(neg(x), pos(y)) → minus_nat(y, x)
plus_int(neg(x), neg(y)) → neg(plus_nat(x, y))
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
                ↳ UsableRulesProof
QDP
                    ↳ QReductionProof
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

GREATEREQ_INT(neg(s(x)), neg(s(y))) → GREATEREQ_INT(neg(x), neg(y))

R is empty.
The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
QDP
                        ↳ UsableRulesReductionPairsProof
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

GREATEREQ_INT(neg(s(x)), neg(s(y))) → GREATEREQ_INT(neg(x), neg(y))

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well.

The following dependency pairs can be deleted:

GREATEREQ_INT(neg(s(x)), neg(s(y))) → GREATEREQ_INT(neg(x), neg(y))
No rules are removed from R.

Used ordering: POLO with Polynomial interpretation [POLO]:

POL(GREATEREQ_INT(x1, x2)) = 2·x1 + x2   
POL(neg(x1)) = x1   
POL(s(x1)) = 2·x1   



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ UsableRulesReductionPairsProof
QDP
                            ↳ PisEmptyProof
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP

Q DP problem:
P is empty.
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The TRS P is empty. Hence, there is no (P,Q,R) chain.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
QDP
                ↳ UsableRulesProof
              ↳ QDP
              ↳ QDP
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

GREATEREQ_INT(pos(s(x)), pos(s(y))) → GREATEREQ_INT(pos(x), pos(y))

The TRS R consists of the following rules:

cond(true, x, y) → plus_int(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
cond(false, x, y) → pos(0)
minus(x, y) → cond(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(neg(x), pos(y)) → minus_nat(y, x)
plus_int(neg(x), neg(y)) → neg(plus_nat(x, y))
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
QDP
                    ↳ QReductionProof
              ↳ QDP
              ↳ QDP
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

GREATEREQ_INT(pos(s(x)), pos(s(y))) → GREATEREQ_INT(pos(x), pos(y))

R is empty.
The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
QDP
                        ↳ UsableRulesReductionPairsProof
              ↳ QDP
              ↳ QDP
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

GREATEREQ_INT(pos(s(x)), pos(s(y))) → GREATEREQ_INT(pos(x), pos(y))

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well.

The following dependency pairs can be deleted:

GREATEREQ_INT(pos(s(x)), pos(s(y))) → GREATEREQ_INT(pos(x), pos(y))
No rules are removed from R.

Used ordering: POLO with Polynomial interpretation [POLO]:

POL(GREATEREQ_INT(x1, x2)) = 2·x1 + x2   
POL(pos(x1)) = x1   
POL(s(x1)) = 2·x1   



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ UsableRulesReductionPairsProof
QDP
                            ↳ PisEmptyProof
              ↳ QDP
              ↳ QDP
              ↳ QDP

Q DP problem:
P is empty.
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The TRS P is empty. Hence, there is no (P,Q,R) chain.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
QDP
                ↳ UsableRulesProof
              ↳ QDP
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

MINUS_NAT(s(x), s(y)) → MINUS_NAT(x, y)

The TRS R consists of the following rules:

cond(true, x, y) → plus_int(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
cond(false, x, y) → pos(0)
minus(x, y) → cond(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(neg(x), pos(y)) → minus_nat(y, x)
plus_int(neg(x), neg(y)) → neg(plus_nat(x, y))
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
QDP
                    ↳ QReductionProof
              ↳ QDP
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

MINUS_NAT(s(x), s(y)) → MINUS_NAT(x, y)

R is empty.
The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
QDP
                        ↳ QDPSizeChangeProof
              ↳ QDP
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

MINUS_NAT(s(x), s(y)) → MINUS_NAT(x, y)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
QDP
                ↳ UsableRulesProof
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

PLUS_NAT(s(x), y) → PLUS_NAT(x, y)

The TRS R consists of the following rules:

cond(true, x, y) → plus_int(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
cond(false, x, y) → pos(0)
minus(x, y) → cond(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(neg(x), pos(y)) → minus_nat(y, x)
plus_int(neg(x), neg(y)) → neg(plus_nat(x, y))
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
QDP
                    ↳ QReductionProof
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

PLUS_NAT(s(x), y) → PLUS_NAT(x, y)

R is empty.
The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
QDP
                        ↳ QDPSizeChangeProof
              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

PLUS_NAT(s(x), y) → PLUS_NAT(x, y)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
QDP
                ↳ UsableRulesProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)

The TRS R consists of the following rules:

cond(true, x, y) → plus_int(pos(s(0)), minus(x, plus_int(pos(s(0)), y)))
cond(false, x, y) → pos(0)
minus(x, y) → cond(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(neg(x), pos(y)) → minus_nat(y, x)
plus_int(neg(x), neg(y)) → neg(plus_nat(x, y))
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
QDP
                    ↳ QReductionProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
In the following pairs the term without variables pos(s(0)) is replaced by the fresh variable x_removed.
Pair: COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
Positions in right side of the pair: Pair: MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
Positions in right side of the pair: The new variable was added to all pairs as a new argument[CONREM].

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
QDP
                        ↳ RemovalProof
                        ↳ Narrowing
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y, x_removed) → MINUS(x, plus_int(x_removed, y), x_removed)
MINUS(x, y, x_removed) → COND(greatereq_int(x, plus_int(x_removed, y)), x, y, x_removed)

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
In the following pairs the term without variables pos(s(0)) is replaced by the fresh variable x_removed.
Pair: COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
Positions in right side of the pair: Pair: MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)
Positions in right side of the pair: The new variable was added to all pairs as a new argument[CONREM].

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
QDP
                        ↳ Narrowing
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y, x_removed) → MINUS(x, plus_int(x_removed, y), x_removed)
MINUS(x, y, x_removed) → COND(greatereq_int(x, plus_int(x_removed, y)), x, y, x_removed)

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By narrowing [LPAR04] the rule MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y) at position [0] we obtained the following new rules [LPAR04]:

MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(plus_nat(s(0), x1))), y0, pos(x1))
MINUS(y0, neg(x1)) → COND(greatereq_int(y0, minus_nat(s(0), x1)), y0, neg(x1))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
QDP
                            ↳ Rewriting
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(plus_nat(s(0), x1))), y0, pos(x1))
MINUS(y0, neg(x1)) → COND(greatereq_int(y0, minus_nat(s(0), x1)), y0, neg(x1))

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [LPAR04] the rule MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(plus_nat(s(0), x1))), y0, pos(x1)) at position [0,1,0] we obtained the following new rules [LPAR04]:

MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(plus_nat(0, x1)))), y0, pos(x1))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
QDP
                                ↳ Rewriting
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
MINUS(y0, neg(x1)) → COND(greatereq_int(y0, minus_nat(s(0), x1)), y0, neg(x1))
MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(plus_nat(0, x1)))), y0, pos(x1))

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [LPAR04] the rule MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(plus_nat(0, x1)))), y0, pos(x1)) at position [0,1,0,0] we obtained the following new rules [LPAR04]:

MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
QDP
                                    ↳ Narrowing
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
MINUS(y0, neg(x1)) → COND(greatereq_int(y0, minus_nat(s(0), x1)), y0, neg(x1))
MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By narrowing [LPAR04] the rule COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y)) at position [1] we obtained the following new rules [LPAR04]:

COND(true, y0, pos(x1)) → MINUS(y0, pos(plus_nat(s(0), x1)))
COND(true, y0, neg(x1)) → MINUS(y0, minus_nat(s(0), x1))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
QDP
                                        ↳ DependencyGraphProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS(y0, neg(x1)) → COND(greatereq_int(y0, minus_nat(s(0), x1)), y0, neg(x1))
MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))
COND(true, y0, pos(x1)) → MINUS(y0, pos(plus_nat(s(0), x1)))
COND(true, y0, neg(x1)) → MINUS(y0, minus_nat(s(0), x1))

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
QDP
                                              ↳ UsableRulesProof
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, y0, pos(x1)) → MINUS(y0, pos(plus_nat(s(0), x1)))
MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
QDP
                                                  ↳ QReductionProof
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, y0, pos(x1)) → MINUS(y0, pos(plus_nat(s(0), x1)))
MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true
plus_nat(s(x), y) → s(plus_nat(x, y))
plus_nat(0, x) → x

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
QDP
                                                      ↳ Rewriting
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, y0, pos(x1)) → MINUS(y0, pos(plus_nat(s(0), x1)))
MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true
plus_nat(s(x), y) → s(plus_nat(x, y))
plus_nat(0, x) → x

The set Q consists of the following terms:

plus_nat(0, x0)
plus_nat(s(x0), x1)
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [LPAR04] the rule COND(true, y0, pos(x1)) → MINUS(y0, pos(plus_nat(s(0), x1))) at position [1,0] we obtained the following new rules [LPAR04]:

COND(true, y0, pos(x1)) → MINUS(y0, pos(s(plus_nat(0, x1))))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ Rewriting
QDP
                                                          ↳ UsableRulesProof
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))
COND(true, y0, pos(x1)) → MINUS(y0, pos(s(plus_nat(0, x1))))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true
plus_nat(s(x), y) → s(plus_nat(x, y))
plus_nat(0, x) → x

The set Q consists of the following terms:

plus_nat(0, x0)
plus_nat(s(x0), x1)
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ Rewriting
                                                        ↳ QDP
                                                          ↳ UsableRulesProof
QDP
                                                              ↳ Rewriting
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))
COND(true, y0, pos(x1)) → MINUS(y0, pos(s(plus_nat(0, x1))))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true
plus_nat(0, x) → x

The set Q consists of the following terms:

plus_nat(0, x0)
plus_nat(s(x0), x1)
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By rewriting [LPAR04] the rule COND(true, y0, pos(x1)) → MINUS(y0, pos(s(plus_nat(0, x1)))) at position [1,0,0] we obtained the following new rules [LPAR04]:

COND(true, y0, pos(x1)) → MINUS(y0, pos(s(x1)))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ Rewriting
                                                        ↳ QDP
                                                          ↳ UsableRulesProof
                                                            ↳ QDP
                                                              ↳ Rewriting
QDP
                                                                  ↳ UsableRulesProof
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))
COND(true, y0, pos(x1)) → MINUS(y0, pos(s(x1)))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true
plus_nat(0, x) → x

The set Q consists of the following terms:

plus_nat(0, x0)
plus_nat(s(x0), x1)
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ Rewriting
                                                        ↳ QDP
                                                          ↳ UsableRulesProof
                                                            ↳ QDP
                                                              ↳ Rewriting
                                                                ↳ QDP
                                                                  ↳ UsableRulesProof
QDP
                                                                      ↳ QReductionProof
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))
COND(true, y0, pos(x1)) → MINUS(y0, pos(s(x1)))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true

The set Q consists of the following terms:

plus_nat(0, x0)
plus_nat(s(x0), x1)
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].

plus_nat(0, x0)
plus_nat(s(x0), x1)



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ Rewriting
                                                        ↳ QDP
                                                          ↳ UsableRulesProof
                                                            ↳ QDP
                                                              ↳ Rewriting
                                                                ↳ QDP
                                                                  ↳ UsableRulesProof
                                                                    ↳ QDP
                                                                      ↳ QReductionProof
QDP
                                                                          ↳ Instantiation
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1))
COND(true, y0, pos(x1)) → MINUS(y0, pos(s(x1)))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true

The set Q consists of the following terms:

greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By instantiating [LPAR04] the rule MINUS(y0, pos(x1)) → COND(greatereq_int(y0, pos(s(x1))), y0, pos(x1)) we obtained the following new rules [LPAR04]:

MINUS(z0, pos(s(z1))) → COND(greatereq_int(z0, pos(s(s(z1)))), z0, pos(s(z1)))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ Rewriting
                                                        ↳ QDP
                                                          ↳ UsableRulesProof
                                                            ↳ QDP
                                                              ↳ Rewriting
                                                                ↳ QDP
                                                                  ↳ UsableRulesProof
                                                                    ↳ QDP
                                                                      ↳ QReductionProof
                                                                        ↳ QDP
                                                                          ↳ Instantiation
QDP
                                                                              ↳ Instantiation
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, y0, pos(x1)) → MINUS(y0, pos(s(x1)))
MINUS(z0, pos(s(z1))) → COND(greatereq_int(z0, pos(s(s(z1)))), z0, pos(s(z1)))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true

The set Q consists of the following terms:

greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By instantiating [LPAR04] the rule COND(true, y0, pos(x1)) → MINUS(y0, pos(s(x1))) we obtained the following new rules [LPAR04]:

COND(true, z0, pos(s(z1))) → MINUS(z0, pos(s(s(z1))))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ Rewriting
                                                        ↳ QDP
                                                          ↳ UsableRulesProof
                                                            ↳ QDP
                                                              ↳ Rewriting
                                                                ↳ QDP
                                                                  ↳ UsableRulesProof
                                                                    ↳ QDP
                                                                      ↳ QReductionProof
                                                                        ↳ QDP
                                                                          ↳ Instantiation
                                                                            ↳ QDP
                                                                              ↳ Instantiation
QDP
                                                                                  ↳ Instantiation
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS(z0, pos(s(z1))) → COND(greatereq_int(z0, pos(s(s(z1)))), z0, pos(s(z1)))
COND(true, z0, pos(s(z1))) → MINUS(z0, pos(s(s(z1))))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true

The set Q consists of the following terms:

greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By instantiating [LPAR04] the rule MINUS(z0, pos(s(z1))) → COND(greatereq_int(z0, pos(s(s(z1)))), z0, pos(s(z1))) we obtained the following new rules [LPAR04]:

MINUS(z0, pos(s(s(z1)))) → COND(greatereq_int(z0, pos(s(s(s(z1))))), z0, pos(s(s(z1))))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ Rewriting
                                                        ↳ QDP
                                                          ↳ UsableRulesProof
                                                            ↳ QDP
                                                              ↳ Rewriting
                                                                ↳ QDP
                                                                  ↳ UsableRulesProof
                                                                    ↳ QDP
                                                                      ↳ QReductionProof
                                                                        ↳ QDP
                                                                          ↳ Instantiation
                                                                            ↳ QDP
                                                                              ↳ Instantiation
                                                                                ↳ QDP
                                                                                  ↳ Instantiation
QDP
                                                                                      ↳ Instantiation
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, z0, pos(s(z1))) → MINUS(z0, pos(s(s(z1))))
MINUS(z0, pos(s(s(z1)))) → COND(greatereq_int(z0, pos(s(s(s(z1))))), z0, pos(s(s(z1))))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true

The set Q consists of the following terms:

greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
By instantiating [LPAR04] the rule COND(true, z0, pos(s(z1))) → MINUS(z0, pos(s(s(z1)))) we obtained the following new rules [LPAR04]:

COND(true, z0, pos(s(s(z1)))) → MINUS(z0, pos(s(s(s(z1)))))



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ Rewriting
                                                        ↳ QDP
                                                          ↳ UsableRulesProof
                                                            ↳ QDP
                                                              ↳ Rewriting
                                                                ↳ QDP
                                                                  ↳ UsableRulesProof
                                                                    ↳ QDP
                                                                      ↳ QReductionProof
                                                                        ↳ QDP
                                                                          ↳ Instantiation
                                                                            ↳ QDP
                                                                              ↳ Instantiation
                                                                                ↳ QDP
                                                                                  ↳ Instantiation
                                                                                    ↳ QDP
                                                                                      ↳ Instantiation
QDP
                                            ↳ QDP
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS(z0, pos(s(s(z1)))) → COND(greatereq_int(z0, pos(s(s(s(z1))))), z0, pos(s(s(z1))))
COND(true, z0, pos(s(s(z1)))) → MINUS(z0, pos(s(s(s(z1)))))

The TRS R consists of the following rules:

greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(pos(x), pos(0)) → true

The set Q consists of the following terms:

greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
QDP
                                              ↳ UsableRulesProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, y0, neg(x1)) → MINUS(y0, minus_nat(s(0), x1))
MINUS(y0, neg(x1)) → COND(greatereq_int(y0, minus_nat(s(0), x1)), y0, neg(x1))

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                            ↳ QDP
                                              ↳ UsableRulesProof
QDP
                                                  ↳ QReductionProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, y0, neg(x1)) → MINUS(y0, minus_nat(s(0), x1))
MINUS(y0, neg(x1)) → COND(greatereq_int(y0, minus_nat(s(0), x1)), y0, neg(x1))

The TRS R consists of the following rules:

minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
QDP
                                                      ↳ MNOCProof
                                                      ↳ SemLabProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, y0, neg(x1)) → MINUS(y0, minus_nat(s(0), x1))
MINUS(y0, neg(x1)) → COND(greatereq_int(y0, minus_nat(s(0), x1)), y0, neg(x1))

The TRS R consists of the following rules:

minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))

The set Q consists of the following terms:

minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ MNOCProof
QDP
                                                      ↳ SemLabProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, y0, neg(x1)) → MINUS(y0, minus_nat(s(0), x1))
MINUS(y0, neg(x1)) → COND(greatereq_int(y0, minus_nat(s(0), x1)), y0, neg(x1))

The TRS R consists of the following rules:

minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))

Q is empty.
We have to consider all (P,Q,R)-chains.
We found the following model for the rules of the TRS R. Interpretation over the domain with elements from 0 to 1.pos: 0
greatereq_int: 0
true: 0
neg: 0
false: 0
MINUS: 0
s: 0
minus_nat: 0
COND: 0
0: 1
By semantic labelling [SEMLAB] we obtain the following labelled TRS:Q DP problem:
The TRS P consists of the following rules:

COND.0-0-0(true., y0, neg.0(x1)) → MINUS.0-0(y0, minus_nat.0-0(s.1(0.), x1))
MINUS.0-0(y0, neg.0(x1)) → COND.0-0-0(greatereq_int.0-0(y0, minus_nat.0-0(s.1(0.), x1)), y0, neg.0(x1))
MINUS.0-0(y0, neg.1(x1)) → COND.0-0-0(greatereq_int.0-0(y0, minus_nat.0-1(s.1(0.), x1)), y0, neg.1(x1))
MINUS.1-0(y0, neg.0(x1)) → COND.0-1-0(greatereq_int.1-0(y0, minus_nat.0-0(s.1(0.), x1)), y0, neg.0(x1))
MINUS.1-0(y0, neg.1(x1)) → COND.0-1-0(greatereq_int.1-0(y0, minus_nat.0-1(s.1(0.), x1)), y0, neg.1(x1))
COND.0-0-0(true., y0, neg.1(x1)) → MINUS.0-0(y0, minus_nat.0-1(s.1(0.), x1))
COND.0-1-0(true., y0, neg.0(x1)) → MINUS.1-0(y0, minus_nat.0-0(s.1(0.), x1))
COND.0-1-0(true., y0, neg.1(x1)) → MINUS.1-0(y0, minus_nat.0-1(s.1(0.), x1))

The TRS R consists of the following rules:

minus_nat.1-0(0., s.1(y)) → neg.0(s.1(y))
greatereq_int.0-0(neg.1(x), pos.0(s.0(y))) → false.
greatereq_int.0-0(neg.1(x), pos.0(s.1(y))) → false.
minus_nat.1-0(0., s.0(y)) → neg.0(s.0(y))
minus_nat.0-0(s.1(x), s.1(y)) → minus_nat.1-1(x, y)
greatereq_int.0-0(pos.1(0.), pos.0(s.0(y))) → false.
greatereq_int.0-0(pos.0(x), neg.0(y)) → true.
minus_nat.0-0(s.1(x), s.0(y)) → minus_nat.1-0(x, y)
greatereq_int.0-0(pos.0(s.1(x)), pos.0(s.1(y))) → greatereq_int.0-0(pos.1(x), pos.1(y))
greatereq_int.0-0(neg.0(s.1(x)), neg.0(s.1(y))) → greatereq_int.0-0(neg.1(x), neg.1(y))
greatereq_int.0-0(pos.1(0.), pos.0(s.1(y))) → false.
greatereq_int.0-0(neg.0(s.0(x)), pos.1(0.)) → false.
greatereq_int.0-0(pos.1(x), neg.1(y)) → true.
minus_nat.1-1(0., 0.) → pos.1(0.)
greatereq_int.0-0(neg.0(s.1(x)), pos.1(0.)) → false.
greatereq_int.0-0(neg.0(s.0(x)), neg.0(s.0(y))) → greatereq_int.0-0(neg.0(x), neg.0(y))
minus_nat.0-1(s.0(x), 0.) → pos.0(s.0(x))
greatereq_int.0-0(pos.0(s.1(x)), pos.0(s.0(y))) → greatereq_int.0-0(pos.1(x), pos.0(y))
greatereq_int.0-0(pos.0(s.0(x)), pos.0(s.1(y))) → greatereq_int.0-0(pos.0(x), pos.1(y))
greatereq_int.0-0(neg.0(s.0(x)), neg.1(0.)) → false.
greatereq_int.0-0(pos.1(x), neg.0(y)) → true.
greatereq_int.0-0(pos.0(x), neg.1(y)) → true.
greatereq_int.0-0(neg.1(0.), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(x), pos.0(s.0(y))) → false.
greatereq_int.0-0(pos.0(s.0(x)), pos.0(s.0(y))) → greatereq_int.0-0(pos.0(x), pos.0(y))
greatereq_int.0-0(pos.1(x), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(s.1(x)), neg.0(s.0(y))) → greatereq_int.0-0(neg.1(x), neg.0(y))
greatereq_int.0-0(neg.0(s.0(x)), neg.0(s.1(y))) → greatereq_int.0-0(neg.0(x), neg.1(y))
minus_nat.0-1(s.1(x), 0.) → pos.0(s.1(x))
minus_nat.0-0(s.0(x), s.0(y)) → minus_nat.0-0(x, y)
greatereq_int.0-0(pos.0(x), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(s.1(x)), neg.1(0.)) → false.
greatereq_int.0-0(neg.1(0.), neg.1(y)) → true.
minus_nat.0-0(s.0(x), s.1(y)) → minus_nat.0-1(x, y)
greatereq_int.0-0(neg.1(0.), neg.0(y)) → true.
greatereq_int.0-0(neg.0(x), pos.0(s.1(y))) → false.

The set Q consists of the following terms:

minus_nat.1-1(0., 0.)
minus_nat.1-0(0., s.0(x0))
minus_nat.1-0(0., s.1(x0))
minus_nat.0-1(s.0(x0), 0.)
minus_nat.0-1(s.1(x0), 0.)
minus_nat.0-0(s.0(x0), s.0(x1))
minus_nat.0-0(s.0(x0), s.1(x1))
minus_nat.0-0(s.1(x0), s.0(x1))
minus_nat.0-0(s.1(x0), s.1(x1))
greatereq_int.0-0(pos.0(x0), pos.1(0.))
greatereq_int.0-0(pos.1(x0), pos.1(0.))
greatereq_int.0-0(neg.1(0.), pos.1(0.))
greatereq_int.0-0(neg.1(0.), neg.0(x0))
greatereq_int.0-0(neg.1(0.), neg.1(x0))
greatereq_int.0-0(pos.0(x0), neg.0(x1))
greatereq_int.0-0(pos.0(x0), neg.1(x1))
greatereq_int.0-0(pos.1(x0), neg.0(x1))
greatereq_int.0-0(pos.1(x0), neg.1(x1))
greatereq_int.0-0(pos.1(0.), pos.0(s.0(x0)))
greatereq_int.0-0(pos.1(0.), pos.0(s.1(x0)))
greatereq_int.0-0(neg.0(x0), pos.0(s.0(x1)))
greatereq_int.0-0(neg.0(x0), pos.0(s.1(x1)))
greatereq_int.0-0(neg.1(x0), pos.0(s.0(x1)))
greatereq_int.0-0(neg.1(x0), pos.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), pos.1(0.))
greatereq_int.0-0(neg.0(s.1(x0)), pos.1(0.))
greatereq_int.0-0(neg.0(s.0(x0)), neg.1(0.))
greatereq_int.0-0(neg.0(s.1(x0)), neg.1(0.))
greatereq_int.0-0(pos.0(s.0(x0)), pos.0(s.0(x1)))
greatereq_int.0-0(pos.0(s.0(x0)), pos.0(s.1(x1)))
greatereq_int.0-0(pos.0(s.1(x0)), pos.0(s.0(x1)))
greatereq_int.0-0(pos.0(s.1(x0)), pos.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), neg.0(s.0(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), neg.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.1(x0)), neg.0(s.0(x1)))
greatereq_int.0-0(neg.0(s.1(x0)), neg.0(s.1(x1)))

We have to consider all minimal (P,Q,R)-chains.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ MNOCProof
                                                      ↳ SemLabProof
QDP
                                                          ↳ DependencyGraphProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

COND.0-0-0(true., y0, neg.0(x1)) → MINUS.0-0(y0, minus_nat.0-0(s.1(0.), x1))
MINUS.0-0(y0, neg.0(x1)) → COND.0-0-0(greatereq_int.0-0(y0, minus_nat.0-0(s.1(0.), x1)), y0, neg.0(x1))
MINUS.0-0(y0, neg.1(x1)) → COND.0-0-0(greatereq_int.0-0(y0, minus_nat.0-1(s.1(0.), x1)), y0, neg.1(x1))
MINUS.1-0(y0, neg.0(x1)) → COND.0-1-0(greatereq_int.1-0(y0, minus_nat.0-0(s.1(0.), x1)), y0, neg.0(x1))
MINUS.1-0(y0, neg.1(x1)) → COND.0-1-0(greatereq_int.1-0(y0, minus_nat.0-1(s.1(0.), x1)), y0, neg.1(x1))
COND.0-0-0(true., y0, neg.1(x1)) → MINUS.0-0(y0, minus_nat.0-1(s.1(0.), x1))
COND.0-1-0(true., y0, neg.0(x1)) → MINUS.1-0(y0, minus_nat.0-0(s.1(0.), x1))
COND.0-1-0(true., y0, neg.1(x1)) → MINUS.1-0(y0, minus_nat.0-1(s.1(0.), x1))

The TRS R consists of the following rules:

minus_nat.1-0(0., s.1(y)) → neg.0(s.1(y))
greatereq_int.0-0(neg.1(x), pos.0(s.0(y))) → false.
greatereq_int.0-0(neg.1(x), pos.0(s.1(y))) → false.
minus_nat.1-0(0., s.0(y)) → neg.0(s.0(y))
minus_nat.0-0(s.1(x), s.1(y)) → minus_nat.1-1(x, y)
greatereq_int.0-0(pos.1(0.), pos.0(s.0(y))) → false.
greatereq_int.0-0(pos.0(x), neg.0(y)) → true.
minus_nat.0-0(s.1(x), s.0(y)) → minus_nat.1-0(x, y)
greatereq_int.0-0(pos.0(s.1(x)), pos.0(s.1(y))) → greatereq_int.0-0(pos.1(x), pos.1(y))
greatereq_int.0-0(neg.0(s.1(x)), neg.0(s.1(y))) → greatereq_int.0-0(neg.1(x), neg.1(y))
greatereq_int.0-0(pos.1(0.), pos.0(s.1(y))) → false.
greatereq_int.0-0(neg.0(s.0(x)), pos.1(0.)) → false.
greatereq_int.0-0(pos.1(x), neg.1(y)) → true.
minus_nat.1-1(0., 0.) → pos.1(0.)
greatereq_int.0-0(neg.0(s.1(x)), pos.1(0.)) → false.
greatereq_int.0-0(neg.0(s.0(x)), neg.0(s.0(y))) → greatereq_int.0-0(neg.0(x), neg.0(y))
minus_nat.0-1(s.0(x), 0.) → pos.0(s.0(x))
greatereq_int.0-0(pos.0(s.1(x)), pos.0(s.0(y))) → greatereq_int.0-0(pos.1(x), pos.0(y))
greatereq_int.0-0(pos.0(s.0(x)), pos.0(s.1(y))) → greatereq_int.0-0(pos.0(x), pos.1(y))
greatereq_int.0-0(neg.0(s.0(x)), neg.1(0.)) → false.
greatereq_int.0-0(pos.1(x), neg.0(y)) → true.
greatereq_int.0-0(pos.0(x), neg.1(y)) → true.
greatereq_int.0-0(neg.1(0.), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(x), pos.0(s.0(y))) → false.
greatereq_int.0-0(pos.0(s.0(x)), pos.0(s.0(y))) → greatereq_int.0-0(pos.0(x), pos.0(y))
greatereq_int.0-0(pos.1(x), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(s.1(x)), neg.0(s.0(y))) → greatereq_int.0-0(neg.1(x), neg.0(y))
greatereq_int.0-0(neg.0(s.0(x)), neg.0(s.1(y))) → greatereq_int.0-0(neg.0(x), neg.1(y))
minus_nat.0-1(s.1(x), 0.) → pos.0(s.1(x))
minus_nat.0-0(s.0(x), s.0(y)) → minus_nat.0-0(x, y)
greatereq_int.0-0(pos.0(x), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(s.1(x)), neg.1(0.)) → false.
greatereq_int.0-0(neg.1(0.), neg.1(y)) → true.
minus_nat.0-0(s.0(x), s.1(y)) → minus_nat.0-1(x, y)
greatereq_int.0-0(neg.1(0.), neg.0(y)) → true.
greatereq_int.0-0(neg.0(x), pos.0(s.1(y))) → false.

The set Q consists of the following terms:

minus_nat.1-1(0., 0.)
minus_nat.1-0(0., s.0(x0))
minus_nat.1-0(0., s.1(x0))
minus_nat.0-1(s.0(x0), 0.)
minus_nat.0-1(s.1(x0), 0.)
minus_nat.0-0(s.0(x0), s.0(x1))
minus_nat.0-0(s.0(x0), s.1(x1))
minus_nat.0-0(s.1(x0), s.0(x1))
minus_nat.0-0(s.1(x0), s.1(x1))
greatereq_int.0-0(pos.0(x0), pos.1(0.))
greatereq_int.0-0(pos.1(x0), pos.1(0.))
greatereq_int.0-0(neg.1(0.), pos.1(0.))
greatereq_int.0-0(neg.1(0.), neg.0(x0))
greatereq_int.0-0(neg.1(0.), neg.1(x0))
greatereq_int.0-0(pos.0(x0), neg.0(x1))
greatereq_int.0-0(pos.0(x0), neg.1(x1))
greatereq_int.0-0(pos.1(x0), neg.0(x1))
greatereq_int.0-0(pos.1(x0), neg.1(x1))
greatereq_int.0-0(pos.1(0.), pos.0(s.0(x0)))
greatereq_int.0-0(pos.1(0.), pos.0(s.1(x0)))
greatereq_int.0-0(neg.0(x0), pos.0(s.0(x1)))
greatereq_int.0-0(neg.0(x0), pos.0(s.1(x1)))
greatereq_int.0-0(neg.1(x0), pos.0(s.0(x1)))
greatereq_int.0-0(neg.1(x0), pos.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), pos.1(0.))
greatereq_int.0-0(neg.0(s.1(x0)), pos.1(0.))
greatereq_int.0-0(neg.0(s.0(x0)), neg.1(0.))
greatereq_int.0-0(neg.0(s.1(x0)), neg.1(0.))
greatereq_int.0-0(pos.0(s.0(x0)), pos.0(s.0(x1)))
greatereq_int.0-0(pos.0(s.0(x0)), pos.0(s.1(x1)))
greatereq_int.0-0(pos.0(s.1(x0)), pos.0(s.0(x1)))
greatereq_int.0-0(pos.0(s.1(x0)), pos.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), neg.0(s.0(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), neg.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.1(x0)), neg.0(s.0(x1)))
greatereq_int.0-0(neg.0(s.1(x0)), neg.0(s.1(x1)))

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 6 less nodes.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ MNOCProof
                                                      ↳ SemLabProof
                                                        ↳ QDP
                                                          ↳ DependencyGraphProof
QDP
                                                              ↳ QDPOrderProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS.0-0(y0, neg.0(x1)) → COND.0-0-0(greatereq_int.0-0(y0, minus_nat.0-0(s.1(0.), x1)), y0, neg.0(x1))
COND.0-0-0(true., y0, neg.0(x1)) → MINUS.0-0(y0, minus_nat.0-0(s.1(0.), x1))

The TRS R consists of the following rules:

minus_nat.1-0(0., s.1(y)) → neg.0(s.1(y))
greatereq_int.0-0(neg.1(x), pos.0(s.0(y))) → false.
greatereq_int.0-0(neg.1(x), pos.0(s.1(y))) → false.
minus_nat.1-0(0., s.0(y)) → neg.0(s.0(y))
minus_nat.0-0(s.1(x), s.1(y)) → minus_nat.1-1(x, y)
greatereq_int.0-0(pos.1(0.), pos.0(s.0(y))) → false.
greatereq_int.0-0(pos.0(x), neg.0(y)) → true.
minus_nat.0-0(s.1(x), s.0(y)) → minus_nat.1-0(x, y)
greatereq_int.0-0(pos.0(s.1(x)), pos.0(s.1(y))) → greatereq_int.0-0(pos.1(x), pos.1(y))
greatereq_int.0-0(neg.0(s.1(x)), neg.0(s.1(y))) → greatereq_int.0-0(neg.1(x), neg.1(y))
greatereq_int.0-0(pos.1(0.), pos.0(s.1(y))) → false.
greatereq_int.0-0(neg.0(s.0(x)), pos.1(0.)) → false.
greatereq_int.0-0(pos.1(x), neg.1(y)) → true.
minus_nat.1-1(0., 0.) → pos.1(0.)
greatereq_int.0-0(neg.0(s.1(x)), pos.1(0.)) → false.
greatereq_int.0-0(neg.0(s.0(x)), neg.0(s.0(y))) → greatereq_int.0-0(neg.0(x), neg.0(y))
minus_nat.0-1(s.0(x), 0.) → pos.0(s.0(x))
greatereq_int.0-0(pos.0(s.1(x)), pos.0(s.0(y))) → greatereq_int.0-0(pos.1(x), pos.0(y))
greatereq_int.0-0(pos.0(s.0(x)), pos.0(s.1(y))) → greatereq_int.0-0(pos.0(x), pos.1(y))
greatereq_int.0-0(neg.0(s.0(x)), neg.1(0.)) → false.
greatereq_int.0-0(pos.1(x), neg.0(y)) → true.
greatereq_int.0-0(pos.0(x), neg.1(y)) → true.
greatereq_int.0-0(neg.1(0.), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(x), pos.0(s.0(y))) → false.
greatereq_int.0-0(pos.0(s.0(x)), pos.0(s.0(y))) → greatereq_int.0-0(pos.0(x), pos.0(y))
greatereq_int.0-0(pos.1(x), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(s.1(x)), neg.0(s.0(y))) → greatereq_int.0-0(neg.1(x), neg.0(y))
greatereq_int.0-0(neg.0(s.0(x)), neg.0(s.1(y))) → greatereq_int.0-0(neg.0(x), neg.1(y))
minus_nat.0-1(s.1(x), 0.) → pos.0(s.1(x))
minus_nat.0-0(s.0(x), s.0(y)) → minus_nat.0-0(x, y)
greatereq_int.0-0(pos.0(x), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(s.1(x)), neg.1(0.)) → false.
greatereq_int.0-0(neg.1(0.), neg.1(y)) → true.
minus_nat.0-0(s.0(x), s.1(y)) → minus_nat.0-1(x, y)
greatereq_int.0-0(neg.1(0.), neg.0(y)) → true.
greatereq_int.0-0(neg.0(x), pos.0(s.1(y))) → false.

The set Q consists of the following terms:

minus_nat.1-1(0., 0.)
minus_nat.1-0(0., s.0(x0))
minus_nat.1-0(0., s.1(x0))
minus_nat.0-1(s.0(x0), 0.)
minus_nat.0-1(s.1(x0), 0.)
minus_nat.0-0(s.0(x0), s.0(x1))
minus_nat.0-0(s.0(x0), s.1(x1))
minus_nat.0-0(s.1(x0), s.0(x1))
minus_nat.0-0(s.1(x0), s.1(x1))
greatereq_int.0-0(pos.0(x0), pos.1(0.))
greatereq_int.0-0(pos.1(x0), pos.1(0.))
greatereq_int.0-0(neg.1(0.), pos.1(0.))
greatereq_int.0-0(neg.1(0.), neg.0(x0))
greatereq_int.0-0(neg.1(0.), neg.1(x0))
greatereq_int.0-0(pos.0(x0), neg.0(x1))
greatereq_int.0-0(pos.0(x0), neg.1(x1))
greatereq_int.0-0(pos.1(x0), neg.0(x1))
greatereq_int.0-0(pos.1(x0), neg.1(x1))
greatereq_int.0-0(pos.1(0.), pos.0(s.0(x0)))
greatereq_int.0-0(pos.1(0.), pos.0(s.1(x0)))
greatereq_int.0-0(neg.0(x0), pos.0(s.0(x1)))
greatereq_int.0-0(neg.0(x0), pos.0(s.1(x1)))
greatereq_int.0-0(neg.1(x0), pos.0(s.0(x1)))
greatereq_int.0-0(neg.1(x0), pos.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), pos.1(0.))
greatereq_int.0-0(neg.0(s.1(x0)), pos.1(0.))
greatereq_int.0-0(neg.0(s.0(x0)), neg.1(0.))
greatereq_int.0-0(neg.0(s.1(x0)), neg.1(0.))
greatereq_int.0-0(pos.0(s.0(x0)), pos.0(s.0(x1)))
greatereq_int.0-0(pos.0(s.0(x0)), pos.0(s.1(x1)))
greatereq_int.0-0(pos.0(s.1(x0)), pos.0(s.0(x1)))
greatereq_int.0-0(pos.0(s.1(x0)), pos.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), neg.0(s.0(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), neg.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.1(x0)), neg.0(s.0(x1)))
greatereq_int.0-0(neg.0(s.1(x0)), neg.0(s.1(x1)))

We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


COND.0-0-0(true., y0, neg.0(x1)) → MINUS.0-0(y0, minus_nat.0-0(s.1(0.), x1))
The remaining pairs can at least be oriented weakly.

MINUS.0-0(y0, neg.0(x1)) → COND.0-0-0(greatereq_int.0-0(y0, minus_nat.0-0(s.1(0.), x1)), y0, neg.0(x1))
Used ordering: Polynomial interpretation [POLO]:

POL(0.) = 0   
POL(COND.0-0-0(x1, x2, x3)) = 1 + x3   
POL(MINUS.0-0(x1, x2)) = 1 + x2   
POL(false.) = 0   
POL(greatereq_int.0-0(x1, x2)) = 0   
POL(minus_nat.0-0(x1, x2)) = x2   
POL(minus_nat.1-0(x1, x2)) = 1 + x2   
POL(minus_nat.1-1(x1, x2)) = 0   
POL(neg.0(x1)) = 1 + x1   
POL(neg.1(x1)) = 0   
POL(pos.0(x1)) = 0   
POL(pos.1(x1)) = 0   
POL(s.0(x1)) = 1 + x1   
POL(s.1(x1)) = 0   
POL(true.) = 0   

The following usable rules [FROCOS05] were oriented:

minus_nat.0-0(s.1(x), s.1(y)) → minus_nat.1-1(x, y)
minus_nat.1-0(0., s.0(y)) → neg.0(s.0(y))
minus_nat.1-0(0., s.1(y)) → neg.0(s.1(y))
minus_nat.0-0(s.1(x), s.0(y)) → minus_nat.1-0(x, y)
minus_nat.1-1(0., 0.) → pos.1(0.)



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
                      ↳ QDP
                        ↳ RemovalProof
                        ↳ RemovalProof
                        ↳ Narrowing
                          ↳ QDP
                            ↳ Rewriting
                              ↳ QDP
                                ↳ Rewriting
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ DependencyGraphProof
                                          ↳ AND
                                            ↳ QDP
                                            ↳ QDP
                                              ↳ UsableRulesProof
                                                ↳ QDP
                                                  ↳ QReductionProof
                                                    ↳ QDP
                                                      ↳ MNOCProof
                                                      ↳ SemLabProof
                                                        ↳ QDP
                                                          ↳ DependencyGraphProof
                                                            ↳ QDP
                                                              ↳ QDPOrderProof
QDP
                                                                  ↳ DependencyGraphProof
                ↳ UsableRulesProof

Q DP problem:
The TRS P consists of the following rules:

MINUS.0-0(y0, neg.0(x1)) → COND.0-0-0(greatereq_int.0-0(y0, minus_nat.0-0(s.1(0.), x1)), y0, neg.0(x1))

The TRS R consists of the following rules:

minus_nat.1-0(0., s.1(y)) → neg.0(s.1(y))
greatereq_int.0-0(neg.1(x), pos.0(s.0(y))) → false.
greatereq_int.0-0(neg.1(x), pos.0(s.1(y))) → false.
minus_nat.1-0(0., s.0(y)) → neg.0(s.0(y))
minus_nat.0-0(s.1(x), s.1(y)) → minus_nat.1-1(x, y)
greatereq_int.0-0(pos.1(0.), pos.0(s.0(y))) → false.
greatereq_int.0-0(pos.0(x), neg.0(y)) → true.
minus_nat.0-0(s.1(x), s.0(y)) → minus_nat.1-0(x, y)
greatereq_int.0-0(pos.0(s.1(x)), pos.0(s.1(y))) → greatereq_int.0-0(pos.1(x), pos.1(y))
greatereq_int.0-0(neg.0(s.1(x)), neg.0(s.1(y))) → greatereq_int.0-0(neg.1(x), neg.1(y))
greatereq_int.0-0(pos.1(0.), pos.0(s.1(y))) → false.
greatereq_int.0-0(neg.0(s.0(x)), pos.1(0.)) → false.
greatereq_int.0-0(pos.1(x), neg.1(y)) → true.
minus_nat.1-1(0., 0.) → pos.1(0.)
greatereq_int.0-0(neg.0(s.1(x)), pos.1(0.)) → false.
greatereq_int.0-0(neg.0(s.0(x)), neg.0(s.0(y))) → greatereq_int.0-0(neg.0(x), neg.0(y))
minus_nat.0-1(s.0(x), 0.) → pos.0(s.0(x))
greatereq_int.0-0(pos.0(s.1(x)), pos.0(s.0(y))) → greatereq_int.0-0(pos.1(x), pos.0(y))
greatereq_int.0-0(pos.0(s.0(x)), pos.0(s.1(y))) → greatereq_int.0-0(pos.0(x), pos.1(y))
greatereq_int.0-0(neg.0(s.0(x)), neg.1(0.)) → false.
greatereq_int.0-0(pos.1(x), neg.0(y)) → true.
greatereq_int.0-0(pos.0(x), neg.1(y)) → true.
greatereq_int.0-0(neg.1(0.), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(x), pos.0(s.0(y))) → false.
greatereq_int.0-0(pos.0(s.0(x)), pos.0(s.0(y))) → greatereq_int.0-0(pos.0(x), pos.0(y))
greatereq_int.0-0(pos.1(x), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(s.1(x)), neg.0(s.0(y))) → greatereq_int.0-0(neg.1(x), neg.0(y))
greatereq_int.0-0(neg.0(s.0(x)), neg.0(s.1(y))) → greatereq_int.0-0(neg.0(x), neg.1(y))
minus_nat.0-1(s.1(x), 0.) → pos.0(s.1(x))
minus_nat.0-0(s.0(x), s.0(y)) → minus_nat.0-0(x, y)
greatereq_int.0-0(pos.0(x), pos.1(0.)) → true.
greatereq_int.0-0(neg.0(s.1(x)), neg.1(0.)) → false.
greatereq_int.0-0(neg.1(0.), neg.1(y)) → true.
minus_nat.0-0(s.0(x), s.1(y)) → minus_nat.0-1(x, y)
greatereq_int.0-0(neg.1(0.), neg.0(y)) → true.
greatereq_int.0-0(neg.0(x), pos.0(s.1(y))) → false.

The set Q consists of the following terms:

minus_nat.1-1(0., 0.)
minus_nat.1-0(0., s.0(x0))
minus_nat.1-0(0., s.1(x0))
minus_nat.0-1(s.0(x0), 0.)
minus_nat.0-1(s.1(x0), 0.)
minus_nat.0-0(s.0(x0), s.0(x1))
minus_nat.0-0(s.0(x0), s.1(x1))
minus_nat.0-0(s.1(x0), s.0(x1))
minus_nat.0-0(s.1(x0), s.1(x1))
greatereq_int.0-0(pos.0(x0), pos.1(0.))
greatereq_int.0-0(pos.1(x0), pos.1(0.))
greatereq_int.0-0(neg.1(0.), pos.1(0.))
greatereq_int.0-0(neg.1(0.), neg.0(x0))
greatereq_int.0-0(neg.1(0.), neg.1(x0))
greatereq_int.0-0(pos.0(x0), neg.0(x1))
greatereq_int.0-0(pos.0(x0), neg.1(x1))
greatereq_int.0-0(pos.1(x0), neg.0(x1))
greatereq_int.0-0(pos.1(x0), neg.1(x1))
greatereq_int.0-0(pos.1(0.), pos.0(s.0(x0)))
greatereq_int.0-0(pos.1(0.), pos.0(s.1(x0)))
greatereq_int.0-0(neg.0(x0), pos.0(s.0(x1)))
greatereq_int.0-0(neg.0(x0), pos.0(s.1(x1)))
greatereq_int.0-0(neg.1(x0), pos.0(s.0(x1)))
greatereq_int.0-0(neg.1(x0), pos.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), pos.1(0.))
greatereq_int.0-0(neg.0(s.1(x0)), pos.1(0.))
greatereq_int.0-0(neg.0(s.0(x0)), neg.1(0.))
greatereq_int.0-0(neg.0(s.1(x0)), neg.1(0.))
greatereq_int.0-0(pos.0(s.0(x0)), pos.0(s.0(x1)))
greatereq_int.0-0(pos.0(s.0(x0)), pos.0(s.1(x1)))
greatereq_int.0-0(pos.0(s.1(x0)), pos.0(s.0(x1)))
greatereq_int.0-0(pos.0(s.1(x0)), pos.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), neg.0(s.0(x1)))
greatereq_int.0-0(neg.0(s.0(x0)), neg.0(s.1(x1)))
greatereq_int.0-0(neg.0(s.1(x0)), neg.0(s.0(x1)))
greatereq_int.0-0(neg.0(s.1(x0)), neg.0(s.1(x1)))

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                ↳ UsableRulesProof
QDP
                    ↳ QReductionProof

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)
plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].

cond(true, x0, x1)
cond(false, x0, x1)
minus(x0, x1)



↳ ITRS
  ↳ ITRStoQTRSProof
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ DependencyGraphProof
            ↳ AND
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
              ↳ QDP
                ↳ UsableRulesProof
                ↳ UsableRulesProof
                  ↳ QDP
                    ↳ QReductionProof
QDP

Q DP problem:
The TRS P consists of the following rules:

COND(true, x, y) → MINUS(x, plus_int(pos(s(0)), y))
MINUS(x, y) → COND(greatereq_int(x, plus_int(pos(s(0)), y)), x, y)

The TRS R consists of the following rules:

plus_int(pos(x), neg(y)) → minus_nat(x, y)
plus_int(pos(x), pos(y)) → pos(plus_nat(x, y))
plus_nat(0, x) → x
plus_nat(s(x), y) → s(plus_nat(x, y))
minus_nat(0, 0) → pos(0)
minus_nat(0, s(y)) → neg(s(y))
minus_nat(s(x), 0) → pos(s(x))
minus_nat(s(x), s(y)) → minus_nat(x, y)
greatereq_int(pos(x), pos(0)) → true
greatereq_int(neg(0), pos(0)) → true
greatereq_int(neg(0), neg(y)) → true
greatereq_int(pos(x), neg(y)) → true
greatereq_int(pos(0), pos(s(y))) → false
greatereq_int(neg(x), pos(s(y))) → false
greatereq_int(neg(s(x)), pos(0)) → false
greatereq_int(neg(s(x)), neg(0)) → false
greatereq_int(pos(s(x)), pos(s(y))) → greatereq_int(pos(x), pos(y))
greatereq_int(neg(s(x)), neg(s(y))) → greatereq_int(neg(x), neg(y))

The set Q consists of the following terms:

plus_int(pos(x0), neg(x1))
plus_int(neg(x0), pos(x1))
plus_int(neg(x0), neg(x1))
plus_int(pos(x0), pos(x1))
plus_nat(0, x0)
plus_nat(s(x0), x1)
minus_nat(0, 0)
minus_nat(0, s(x0))
minus_nat(s(x0), 0)
minus_nat(s(x0), s(x1))
greatereq_int(pos(x0), pos(0))
greatereq_int(neg(0), pos(0))
greatereq_int(neg(0), neg(x0))
greatereq_int(pos(x0), neg(x1))
greatereq_int(pos(0), pos(s(x0)))
greatereq_int(neg(x0), pos(s(x1)))
greatereq_int(neg(s(x0)), pos(0))
greatereq_int(neg(s(x0)), neg(0))
greatereq_int(pos(s(x0)), pos(s(x1)))
greatereq_int(neg(s(x0)), neg(s(x1)))

We have to consider all minimal (P,Q,R)-chains.